package com.yqg.protection.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yqg.protection.cover.LocalDateTimeConverter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * fire_basic_infor 实体类
 *
 * @author zxf
 * @since 2024-10-16
 */
@Getter
@Setter
@TableName("fire_basic_infor")
@ApiModel(value = "FireBasicInfor对象", description = "")
public class FireBasicInfor implements Serializable {

    private static final long serialVersionUID = 1L;

    @ExcelProperty(value = "ID", index = 0)
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ExcelProperty(value = "单位ID", index = 1)
    private Long clientId;

    @ExcelProperty(value = "单位名称", index = 2)
    @ApiModelProperty("单位名称")
    @TableField(exist = false)
    private String clientName;

    @ExcelProperty(value = "成立时间", index = 3, converter = LocalDateTimeConverter.class)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("成立时间")
    private LocalDateTime establishTime;

    @ExcelProperty(value = "电话", index = 4)
    @ApiModelProperty("电话")
    private String telephone;

    @ExcelProperty(value = "传真", index = 5)
    @ApiModelProperty("传真")
    private String faxes;

    @ExcelProperty(value = "单位邮编", index = 6)
    @ApiModelProperty("单位邮编")
    private String clientPostcode;

    @ExcelProperty(value = "e-mail", index = 7)
    @ApiModelProperty("e-mail")
    private String email;

    @ExcelProperty(value = "法人代表或主要负责人", index = 8)
    @ApiModelProperty("法人代表或主要负责人")
    private String functionary;

    @ExcelProperty(value = "法人代表或主要负责人联系电话", index = 9)
    @ApiModelProperty("法人代表或主要负责人联系电话")
    private String functionaryTel;

    @ExcelProperty(value = "所属地区派出所", index = 10)
    @ApiModelProperty("所属地区派出所")
    private String localPoliceStation;

    @ExcelProperty(value = "上级主管单位", index = 11)
    @ApiModelProperty("上级主管单位")
    private String superCompetClient;

    @ExcelProperty(value = "管辖单位", index = 12)
    @ApiModelProperty("管辖单位")
    private String jurisdictClient;

    @ExcelProperty(value = "固定资产额(万元)", index = 13)
    @ApiModelProperty("固定资产额(万元)")
    private BigDecimal fixedAssets;

    @ExcelProperty(value = "营业时最大人数(人)", index = 14)
    @ApiModelProperty("营业时最大人数(人)")
    private Integer maxWorkerNum;

    @ExcelProperty(value = "占地总面积(m²)", index = 15)
    @ApiModelProperty("占地总面积(m²)")
    private BigDecimal totalArea;

    @ExcelProperty(value = "总建筑面积(m²)", index = 16)
    @ApiModelProperty("总建筑面积(m²)")
    private BigDecimal buildingArea;

    @ExcelProperty(value = "职工人数", index = 17)
    @ApiModelProperty("职工人数")
    private Integer workerNum;

    @ExcelProperty(value = "经济所有制", index = 18)
    @ApiModelProperty("经济所有制")
    private String econOwnership;

    @ExcelProperty(value = "燃气类型", index = 19)
    @ApiModelProperty("燃气类型")
    private String gasType;

    @ExcelIgnore
    private Integer isDelete;

}
